Перейти к основному содержимому

1.01. Давайте познакомимся

Всем

Уважаемые читатели!

Меня зовут Тагиров Тимур. И я хочу помочь.

Мой проект – серия книг об информационных технологиях. Смысл в том, чтобы дать человечеству единый и ультимативный гайд, который позволит изучить сферу IT в максимально полном объеме и не прибегать к помощи в виде дополнительных книг и курсов. После прочтения данного материала вы разберетесь во всех аспектах компьютеров, приложений и технологий, научитесь читать и писать код на нескольких языках, обучитесь анализу, тестированию и даже информационной безопасности. В самом начале я представлю вам своеобразную «дорожную карту», которая позволит вам понять, в каком порядке всё нужно изучить.

Важно
Не нужно бояться, информация будет подаваться с моим особым и проверенным подходом – плавно, и без жесткой науки. Стоит отметить, что изучение – это процесс поглощения информации, и у каждого свой темп, так что лучше стараться читать плавно, как вам удобно. Если вы сможете – то изучите всё, что есть, за пару часов и станете профи. Если почувствуете, что голова «закипает» - возьмите перерывчик и вернитесь к книге завтра, получая знаний «порционно».

Удачи!

Возможно, если вы обратили внимание на эту книгу, то уже имеете общие представления о сфере информационных технологий, и многое будет уже знакомо, но я хотел бы сразу обозначить цель, начав с рассказа о себе. Сейчас я буду упоминать некоторые понятия и термины, устройства и технологии, и, если они для вас новые – это только подчеркнет необходимость ознакомиться! Не беспокойтесь, в дальнейшем мы обучимся всему.


Идея написать эту книгу пришла ко мне не сразу, но финальным «триггером» являлось необычное событие – моя жена, много лет посвятившая медицине, решила сменить профиль, и попробовать изучить айти. Это кажется непосильным – работа «руками» сменяется на работу «головой». Страдания навалились сразу, при открытии большинства учебников. Но на практике, стоило начать с самого начала, вернуться к базовым основам школьной программы, и…всё пошло, как по маслу. Технические устройства, HTML, CSS, SQL, API – всё изучалось быстро и легко, благодаря плавности погружения, которое для неё организовал я, объясняя всё на пальцах, и подсовывая полезные материалы. Параллельно с ней учился другой мой знакомый, который ощущал ту же боль! И то же самое ощущал я в своё время, как и многие другие специалисты.

Я родился в 1990-х годах, и моё детство, отрочество и взросление выпало на эпоху развития технологий, от распространения персональных компьютеров до развития нейронных сетей. Ещё ребенком, я работал с первыми итерациями MS-DOS, Windows XP, затронул первые домашние игровые приставки, и в дальнейшем моя жизнь текла в сопровождении с эволюцией устройств и программного обеспечения. Dial-up, WAP, GPRS, EDGE, первые итерации мобильного интернета. Видео- и аудиокассеты, провал Windows Vista, ADSL-безлимитный интернет, 3G-USB модемы, которые грелись и тормозили. Появление социальных сетей, революционный «Вконтакте» от Павла Дурова. Так получилось, что мне удалось лично «пообщаться» с множеством поколений устройств, операционных систем и программ.

В школе я был среднестатистическим учеником, но, когда у некоторых одноклассников был первый компьютер, к сожалению, у меня его не было. А когда появился, он был настолько слабым, что об играх не мог даже мечтать – хотя для более старшего поколения 32 МБ видеопамяти и 128 МБ оперативной памяти показались бы раздольем. Но факт – мне пришлось изучать всё, кроме игр, особенности операционной системы и развлекаться лишь этим. Позднее я увлёкся разработкой модификаций для игр, и делился результатами с одноклассниками. Учебная программа, к сожалению, включала в себя лишь базовое обучение тому, что и так все уже умели. Интернет в нашем детстве был совсем другой, мы платили за каждый мегабайт трафика большие деньги, и порой скачивание обычной картинки в 128 килобайт занимало целую кучу времени. Когда интернет стал быстрее, а трафик стал безлимитным, поисковик Google и Wikipedia казались божественным даром – представить, что перед тобой безграничные возможности в сети – было немыслимо! Мы ещё не использовали термин «айти», а «программисты» для нас были лишь очкариками.

Но прошли годы, и вот, сейчас люди уже не ценят, что имеют. В компьютерах установлены высокоскоростные твердотельные накопители, оперативная память огромного объема, сверхбыстрый беспроводной интернет, умные дома, и конечно же искусственный интеллект. Нейросети используются для генерации готового кода, а начинающие разработчики не вникают, предпочитая «вайб-кодинг». Школьники не желают изучать и познавать мир, а используют сетевые возможности лишь для токсичного обсуждения интересуемой темы, в которой, конечно, разбираться тоже не хочется. Однако, я хочу сказать, что всё же виноваты НЕ сами новички.

Когда я получил высшее образование в области юриспруденции, судьба меня провела через множество различных сфер и профессий, прежде чем привела меня в IT. Сначала это было хобби – я разрабатывал видеоигры при помощи Unity и создавал полезные программы для себя. Но в дальнейшем мне удалось принять участие в создании и внедрении крупной региональной государственной информационной системы в области градостроительства и архитектуры, где я несколько лет трудился, пройдя путь от специалиста отдела информационной безопасности и технической поддержки до начальника отдела актуализации и размещения данных. Там я вложил много сил в развитие системы, значительно углубившись в сферу геоинформационных технологий, а также стал автором огромнейшей базы данных в области архитектуры и строительства, и в дальнейшем окончательно сменив профиль на разработчика.

Разработка в целом штука довольно интересная, но она сильно привязана к проекту. На одном проекте может быть отличный заказчик, спокойная и приятная атмосфера, и разрабатывать одно удовольствие. А где-то может быть агрессия, токсичность, выгорание, кадровая текучка, ужасная документация и тонны страшного легаси-кода. Словом, как повезёт. Опыт разработки может быть у людей самым разнообразным, вот и у меня был необычный путь.


Но мы здесь не за рассказом о моём опыте. В момент, когда я решил сменить сферу, я столкнулся с необходимостью разобраться ещё глубже. И, вроде бы продвинутый пользователь ПК, считая, что будет легко, начал изучать сферу, читать статьи и учебники, проходить курсы и развиваться, то… получил разочарование. В чём же?

Изучая абсолютно любую тему, приходится прыгать по тысячам статей, что-то спрашивать у опытных разработчиков, гуглить, и так далее. Коллега даже назвала это «матрёшкой» из ссылок в базах знаний. Обратившись к книгам, сталкиваешься с тем, что тебя встречают сразу сложной логикой, математикой и кучей сложных алгоритмов. Но зачем мне разбирать код, когда я не могу понять, что означает каждое ключевое слово? Хочу я разобраться в теме, но мне придется прочесть кучу узкопрофильным учебников, пройти разные курсы, а опытные коллеги не особо горят желанием тратить на меня время. И в процессе изучения предмета, навык за навыком, система за системой, тема за темой, накапливается целая куча материала, а паззл собирать приходится самому. Если поначалу это казалось привычным, нормальным, но вскоре начинаешь понимать, почему айтишники выгорают. После меня, многие другие мои знакомые начали переходить в сферу информационных технологий. Кроме того, я работал в сфере технической поддержки, и при внедрении системы, я обучал и консультировал тысячи пользователей. Им всем было тяжело изучить и адаптироваться к новинкам, так как они привыкли работать на бумаге, а передо мной стояла задача автоматизировать бизнес-процессы, цифровизовать бумажные документы и это было нереально сложно. За год я лично мог отработать вплоть до пятнадцати тысяч обращений в службу технической поддержки. Подчеркну – смысл не в моей нагрузке, а в том, как тяжело было пользователям учиться чему-то новому. Так стало понятно, что это не только у меня. Это проблема массовая. Новички тонут в инфопотоке, любой учебник с первых глав приветствует сложными абстракциями и жесткими алгоритмами. Практику набрать невозможно, а для трудоустройства требуют многие годы опыта.

Современный человек любит получать информацию здесь и сейчас, и предпочитает визуальное объяснение с аудиосопровождением, к примеру, через видеоролики. Однако важно понять, что, такие видео записываются в основном с маркетинговыми целями, и осуждать создателей не стоит – это их хлеб. По моим наблюдениям, подавляющее большинство курсов по IT построены по шаблону «Стань разработчиком за два месяца!», «Зарплата $3000 после нашего тренинга!», но на деле, пройдя такие курсы, знания будут лишь поверхностными, возникнет куча вопросов, но зато будет много воды без четкой структуры и системности. После таких курсов, новички:

  • не понимают основ (например, как работает память или сеть);
  • не умеют анализировать задачи (только повторяют мантру ментора);
  • не могут пройти собеседование, так как HR спрашивает базу.

Говоря о собеседованиях, то вакансии устроены так, что для вакансии Junior-разработчика требуют навыки обладания всем на свете – причем, не базовые знания, а именно продвинутые – сразу умение работать с множеством абсолютно разных программ. А где новичку брать опыт? А кто его научит? ChatGPT? ИИ-помощники часто ошибаются, дают разрозненные ответы, не раскрывают целостной картины, не учат анализировать и задавать правильные вопросы. Как мы можем узнать, корректно ли мы поставили вопрос? Многие опытные айтишники, кстати говоря, шутят, что главный навык в сфере – умение правильно «гуглить». Это база, которой я тоже постараюсь научить.

Кому-то повезло начать карьеру на заре 2000-х, когда многих технологий не было, как и высокой конкуренции. Сейчас же высокий уровень оплаты труда, вездесущие курсы, доступность информации, облегчение разработки и распространенность «коробочных продуктов», а также удаленного характеры работы повысили градус конкурентности в отрасли до максимума. Порой, зайдя в вакансию на агрегаторе, можно увидеть ДЕСЯТКИ тысяч откликнувшихся за неделю. И как тут выживать? К сожалению, только учиться.


Никто не хочет брать на работу новичков. Есть, конечно, единицы, которые грамотно рассуждают по модели «возьму дешевого новичка и обучу из него специалиста». Рынок переполнен джунами. А после трудоустройства - никто не хочет учить новичков. Есть такая особенность у множества IT-специалистов – это токсичность, которая появилась вследствие профессиональной деформации и небольшого выгорания. Даже если разработчик работает всего пару часов в сутки, остальное время бездельничает, он не пожелает выделить время на обучение новичка. Если, конечно, новичку не повезло. Но факт – когда обучаешься чему-то в IT, поначалу страдаешь и стараешься, а после осознания и понимания уже кажется всё настолько лёгким и элементарным, что потом, со временем, трудность понимания забывается, и на обращения новичков реагируют уже как на проявление глупости. От этого новички выгорают, и боятся обращаться. Возможно, если вы высококвалифицированный специалист в какой-то области информационных технологий, вы будете усмехаться, читая, но будем честны – все когда-то были новичками, и просто не бывает никогда. На практике я встречал забавные моменты, когда мощные разработчики, специалисты высокого уровня, не разбирались в командной строке и особенностях базовых настроек сети и офисной техники. Смежники (дизайнеры, менеджеры, аналитики и просто пользователи) вынуждены понимать азы разработки, но у них нет возможности ознакомиться быстро и просто. Порой команда разработчиков и команда менеджеров говорят на разном языке. Так уж устоялось в обществе, что большинство работников в силу загруженности перекладывают ответственность на более компетентных. Причина тому не только в манерах, но и в сложности ознакомления – если разработчики и аналитики тратят годы, чтобы познать основы, то сколько нужно выделять времени менеджеру, у которого совсем другие задачи, которые не совсем сочетаются с необходимостью проходить десятки курсов и читать сотни учебников? И другой случай, порой менеджмент небольших организаций не понимает, что представляет собой «системный администратор» и поручают им задачи по разработке, что конечно же ведёт к провалу.


Коммерция победила. Любой курс или учебник выгоднее сделать узкопрофильным. Хорошие учебники устаревают, технологии устаревают, а конкретные фреймворки теряют актуальность. Многие фундаментальные вещи, которые помогут разобраться в базовых вопросах, описываются в довольно старых материалах и статьях, которые содержат много лишнего. И читатели пропускают большие куски учебников, либо вовсе бросают изучение, так и не познав истину. Тогда потерявшиеся в тоннах информации обращаются к ИИ-помощникам. Нейросети (привет, ChatGPT!) не помогут на практике, так как работа с ними просто склонится к Ctrl+C и Ctrl+V. Если поначалу можно стараться пообщаться, спросить какие-то термины, но тем не менее, это лишь иллюзия и общий «хайп» нейросетей. На самом деле, знания дают именно книги. И, поскольку мой путь выпал как раз на эту тяжкую эпоху, я прекрасно понимаю, насколько сейчас сложно изучать этот многогранный мир. Так как же не сойти с ума, входя в IT? Эта книга точно объяснит наконец, как всё работает.